iT邦幫忙

2026 iThome 鐵人賽

DAY 6
0
AI 自動化

用 Dify 建構個人專屬 AI Agent 應用系列 第 6

優化對話體驗:如何在 Chatbot 用 Prompt 打造動態開場引導與推薦問題

  • 分享至 

  • xImage
  •  

昨天順利把「技術程度」與「程式語言」的對話變數接進提示詞,今天我想處理另一個很常見的使用者體驗問題:「使用者一進來,如果對著空白輸入框,往往不知道該問什麼。」

為了解決冷啟動的尷尬,今天打算幫這個顧問加上歡迎詞與建議問題。原本翻看部分教學,想直接找介面上的快捷開關,但考量到未來整合彈性,我決定直接透過「系統提示詞(System Prompt)」來掌管開場的互動邏輯。

為什麼選擇用 Prompt 實作引導?

相較於單純依賴固定的靜態開場白,直接把互動引導寫入 Prompt 有幾個明顯的好處:

  • 動態帶入變數:能把昨天設定好的 {{language}} 和 {{level}} 變數無縫融入歡迎詞,讓使用者一開口就感受到專屬客製化

  • 意圖邊界控制:大語言模型如果沒有約束,面對打招呼往往會發散隨聊;透過規則限制,能把互動鎖定在技術諮詢的範疇

  • 邏輯集中管理:將人設、專業規則與初次接待邏輯整合在同一套提示詞中,便於後續統一微調與版本控管

實作方法:在 Prompt 建立「冷啟動」防呆規則

我在原本的提示詞最下方,追加了一段「初始互動引導」規範:

#初始互動引導
若使用者尚未提出具體問題(或僅傳送打招呼詞彙如 Hi、你好、哈囉),請一律回覆:
「你好!我是你的專屬全端與系統架構顧問。
我已收到你的設定:主要語言為 {{language}},目前以【{{level}}】模式提供協助。

你可以直接貼上報錯訊息、請我審查程式碼,或是從以下熱門方向開始提問:

  1. 如何排查高併發下的記憶體洩漏?
  2. 幫我優化一段執行緩慢的 SQL 查詢
  3. 微服務架構中,Redis 快取與資料庫的一致性該如何保證?

請告訴我你今天想解決什麼問題?」

實測驗證

儲存並發布後,在右側設定好變數(Java / 新手初心者),接著在對話框輸入一句簡單的「你好啊」。

實測結果非常精準:AI 沒有跳針或隨意寒暄,而是準確抓取上方輸入的變數,並主動列出 3 個技術方向供使用者選題提問,順利解決了對著空白輸入框發呆的問題。
https://ithelp.ithome.com.tw/upload/images/20260912/20178900vmOh2JVhVe.png

今日總結與下一步

到目前為止,我們在 Chatbot 架構下完成了角色人設、動態變數以及對話引導的完整配置,問答體驗已經相當流暢。然而,純粹的 Chatbot 本質上依然是被動問答,遇到即時資訊或外部計算時很容易受限於模型的知識庫。為了讓顧問具備查閱即時網路資料與使用工具的能力,明天Day7我們將正式邁出關鍵一步——開啟Dify的 Agent(代理) 架構,掛載外部搜尋工具,讓AI真正具備自主調用工具的能力!


上一篇
加入對話變數,實測技術顧問能否針對新手與資深工程師給出不同回答
下一篇
解鎖 Agent:掛載 DuckDuckGo 實作聯網搜尋與 Tool Calling
系列文
用 Dify 建構個人專屬 AI Agent 應用15
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言